<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!-- 
  * t
  ****************************************************************************
  * Copyright (c) 1998-2005,2006 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
  * "Software"), to deal in the Software without restriction, including      *
  * without limitation the rights to use, copy, modify, merge, publish,      *
  * distribute, distribute with modifications, sublicense, and/or sell       *
  * copies of the Software, and to permit persons to whom the Software is    *
  * furnished to do so, subject to the following conditions:                 *
  *                                                                          *
  * The above copyright notice and this permission notice shall be included  *
  * in all copies or substantial portions of the Software.                   *
  *                                                                          *
  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS  *
  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF               *
  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.   *
  * IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,   *
  * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR    *
  * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR    *
  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.                               *
  *                                                                          *
  * Except as contained in this notice, the name(s) of the above copyright   *
  * holders shall not be used in advertising or otherwise to promote the     *
  * sale, use or other dealings in this Software without prior written       *
  * authorization.                                                           *
  ****************************************************************************
  * @Id: form_field_buffer.3x,v 1.14 2006/11/04 17:12:00 tom Exp @
-->
<HTML>
<HEAD>
<TITLE>form_field_buffer 3x</TITLE>
<link rev=made href="mailto:bug-ncurses@gnu.org">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD>
<BODY>
<H1>form_field_buffer 3x</H1>
<HR>
<PRE>
<!-- Manpage converted by man2html 3.0.1 -->
<STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>                             <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>




</PRE>
<H2>NAME</H2><PRE>
       <STRONG>form_field_buffer</STRONG> - field buffer control


</PRE>
<H2>SYNOPSIS</H2><PRE>
       <STRONG>#include</STRONG> <STRONG>&lt;form.h&gt;</STRONG>
       int  set_field_buffer(FIELD  *field,  int  buf, const char
       *value);
       char *field_buffer(const FIELD *field, int buffer);
       int set_field_status(FIELD *field, bool status);
       bool field_status(const FIELD *field);
       int set_max_field(FIELD *field, int max);


</PRE>
<H2>DESCRIPTION</H2><PRE>
       The function <STRONG>set_field_buffer</STRONG> sets the numbered buffer  of
       the  given  field  to contain a given string.  Buffer 0 is
       the displayed value of the field; other  numbered  buffers
       may be allocated by applications through the <STRONG>nbuf</STRONG> argument
       of (see <STRONG><A HREF="form_field_new.3x.html">form_field_new(3x)</A></STRONG>) but are not manipulated by the
       forms  library.   The  function  <STRONG>field_buffer</STRONG>  returns the
       address of the buffer.  Please note that this  buffer  has
       always  the  length  of the buffer, that means that it may
       typically contain trailing spaces. If you entered  leading
       spaces  the  buffer may also contain them. If you want the
       raw data, you must write your own routine that copies  the
       value out of the buffer and removes the leading and trail-
       ing spaces. Please note also, that  subsequent  operations
       on  the  form  will  probably  change  the  content of the
       buffer. So do not use it for  long  term  storage  of  the
       entered form data.

       The  function  <STRONG>set_field_status</STRONG> sets the associated status
       flag of <EM>field</EM>; <STRONG>field_status</STRONG> gets the current  value.   The
       status  flag  is set to a nonzero value whenever the field
       changes.

       The function <STRONG>set_max_field</STRONG> sets the  maximum  size  for  a
       dynamic  field.   An  argument  of 0 turns off any maximum
       size threshold for that field.


</PRE>
<H2>RETURN VALUE</H2><PRE>
       The <STRONG>field_buffer</STRONG> function returns NULL on error.  It  sets
       errno according to their success:

       <STRONG>E_OK</STRONG> The routine succeeded.

       <STRONG>E_BAD_ARGUMENT</STRONG>
            Routine  detected  an incorrect or out-of-range argu-
            ment.

       The <STRONG>field_status</STRONG> function returns <STRONG>TRUE</STRONG> or <STRONG>FALSE</STRONG>.

       The remaining routines return one of the following:

       <STRONG>E_OK</STRONG> The routine succeeded.

       <STRONG>E_SYSTEM_ERROR</STRONG>
            System error occurred (see <STRONG>errno</STRONG>).

       <STRONG>E_BAD_ARGUMENT</STRONG>
            Routine detected an incorrect or  out-of-range  argu-
            ment.


</PRE>
<H2>SEE ALSO</H2><PRE>
       <STRONG><A HREF="ncurses.3x.html">curses(3x)</A></STRONG> and related pages whose names begin "form_" for
       detailed descriptions of the entry points.


</PRE>
<H2>NOTES</H2><PRE>
       The header file <STRONG>&lt;form.h&gt;</STRONG> automatically includes the header
       file

       When  configured for wide-characters, <STRONG>field_buffer</STRONG> returns
       a pointer to temporary storage (allocated and freed by the
       library).   The  application  should not attempt to modify
       the  data.   It  will  be  freed  on  the  next  call   to
       <STRONG>field_buffer</STRONG> to return the same buffer.  <STRONG>&lt;curses.h&gt;</STRONG>.


</PRE>
<H2>PORTABILITY</H2><PRE>
       These  routines  emulate the System V forms library.  They
       were not supported on Version 7 or BSD versions.


</PRE>
<H2>AUTHORS</H2><PRE>
       Juergen Pfeifer.  Manual  pages  and  adaptation  for  new
       curses by Eric S. Raymond.



                                                  <STRONG><A HREF="form_field_buffer.3x.html">form_field_buffer(3x)</A></STRONG>
</PRE>
<HR>
<ADDRESS>
Man(1) output converted with
<a href="http://www.oac.uci.edu/indiv/ehood/man2html.html">man2html</a>
</ADDRESS>
</BODY>
</HTML>
